package com.ruoyi.material.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 物资信息对象 material_info
 * 
 * @author ruoyi
 * @date 2025-05-07
 */
public class MaterialInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 物资ID */
    private Long materialId;

    /** 物资名称 */
    @Excel(name = "物资名称")
    private String materialName;

    /** 物资类型ID */
    @Excel(name = "物资类型ID")
    private Long materialTypeId;

    /** 物资规格型号 */
    @Excel(name = "物资规格型号")
    private String specification;

    /** 生产厂家 */
    @Excel(name = "生产厂家")
    private String manufacturer;

    /** 生产日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date productionDate;

    /** 保质期 */
    @Excel(name = "保质期")
    private String shelfLife;

    /** 计量单位 */
    @Excel(name = "计量单位")
    private String unit;

    /** 备注信息 */
    @Excel(name = "备注信息")
    private String remarks;

    public void setMaterialId(Long materialId) 
    {
        this.materialId = materialId;
    }

    public Long getMaterialId() 
    {
        return materialId;
    }
    public void setMaterialName(String materialName) 
    {
        this.materialName = materialName;
    }

    public String getMaterialName() 
    {
        return materialName;
    }
    public void setMaterialTypeId(Long materialTypeId) 
    {
        this.materialTypeId = materialTypeId;
    }

    public Long getMaterialTypeId() 
    {
        return materialTypeId;
    }
    public void setSpecification(String specification) 
    {
        this.specification = specification;
    }

    public String getSpecification() 
    {
        return specification;
    }
    public void setManufacturer(String manufacturer) 
    {
        this.manufacturer = manufacturer;
    }

    public String getManufacturer() 
    {
        return manufacturer;
    }
    public void setProductionDate(Date productionDate) 
    {
        this.productionDate = productionDate;
    }

    public Date getProductionDate() 
    {
        return productionDate;
    }
    public void setShelfLife(String shelfLife) 
    {
        this.shelfLife = shelfLife;
    }

    public String getShelfLife() 
    {
        return shelfLife;
    }
    public void setUnit(String unit) 
    {
        this.unit = unit;
    }

    public String getUnit() 
    {
        return unit;
    }
    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("materialId", getMaterialId())
            .append("materialName", getMaterialName())
            .append("materialTypeId", getMaterialTypeId())
            .append("specification", getSpecification())
            .append("manufacturer", getManufacturer())
            .append("productionDate", getProductionDate())
            .append("shelfLife", getShelfLife())
            .append("unit", getUnit())
            .append("remarks", getRemarks())
            .toString();
    }
}
